@InProceedings{PintoFontGuerTerr:2016:FeVeAr,
author = "Pinto, Arthur F. and Fontes, Nicolas Ribeiro and Guerra, Eduardo
Martins and Terra, Ricardo",
affiliation = "{Universidade Federal de Lavras (UFLA)} and {Instituto Nacional de
Pesquisas Espaciais (INPE)} and {Instituto Nacional de Pesquisas
Espaciais (INPE)} and {Universidade Federal de Lavras (UFLA)}",
title = "ArchCI: uma ferramenta de verifica{\c{c}}{\~a}o arquitetural em
integra{\c{c}}{\~a}o cont{\'{\i}}nua",
booktitle = "Anais...",
year = "2016",
organization = "Congresso Brasileiro de Software, 7. (CBSOFT)",
abstract = "As software evolves, developers usually introduce deviations from
the planned architecture, due to unawareness, conflicting
requirements, technical difficulties, deadlines, etc. Although
architectural compliance processes identify architectural
violations, (i) these tools are underused and (ii) detected
violations are rarely corrected. Therefore, this article
introduces ArchCI, a tool that provides architectural compliance
check as part of the Continuous Integration (CI) process. The tool
relies on DCL as underlying conformance technique and Jenkins as
the CI server. It implies that the architectural compliance
process is triggered by every code integration, performing preset
actions when violations are detected. Such actions range from
sending a warning e-mail to forbid the integration to the
repository. Also, this article reports case studies in a
controlled and a real-world scenarios to demonstrate the
applicability of the tool. RESUMO: No decorrer de um projeto de
software, desenvolvedores normalmente introduzem desvios em
rela{\c{c}}{\~a}o {\`a} arquitetura planejada, seja por novos
requisitos, desconhecimento, dificuldades t{\'e}cnicas, prazos
curtos, etc. Embora existam processos e ferramentas de
conformidade arquitetural que identifiquem viola{\c{c}}{\~o}es,
(i) essas ferramentas s{\~a}o subutilizadas e (ii)
viola{\c{c}}{\~o}es detectadas s{\~a}o raramente corrigidas.
Diante disso, este artigo implementa ArchCI, uma ferramenta que
prov{\^e} a verifica{\c{c}}{\~a}o de conformidade arquitetural
como parte do processo de Integra{\c{c}}{\~a}o Cont{\'{\i}}nua
(IC). S{\~a}o utilizados DCL como t{\'e}cnica de conformidade e
Jenkins como servidor de IC. Isso implica que o processo de
conformidade arquitetural {\'e} ativado a cada
integra{\c{c}}{\~a}o de c{\'o}digo, executando
a{\c{c}}{\~o}es configuradas quando viola{\c{c}}{\~o}es forem
detectadas. Tais a{\c{c}}{\~o}es podem variar desde o envio de
um e-mail de alerta ao bloqueio da integra{\c{c}}{\~a}o do
c{\'o}digo ao reposit{\'o}rio. Al{\'e}m disso, este artigo
reporta uma avalia{\c{c}}{\~a}o controlada e uma
avalia{\c{c}}{\~a}o em um cen{\'a}rio real que demonstram a
aplicabilidade da ferramenta.",
conference-location = "Maring{\'a}, PR",
conference-year = "19-23 set.",
label = "lattes: 3413978291577451 3 PintoFontGuerTerr:2016:FeVeAr",
language = "pt",
targetfile = "pinto_arch.pdf",
urlaccessdate = "27 abr. 2024"
}